home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 October: Mac OS SDK / Dev.CD Oct 97 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Universal / Interfaces / PInterfaces / QDOffscreen.p < prev    next >
Encoding:
Text File  |  1997-08-12  |  6.3 KB  |  197 lines  |  [TEXT/MPS ]

  1. {
  2.      File:        QDOffscreen.p
  3.  
  4.      Contains:    Quickdraw Offscreen GWorld Interfaces.
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Release:    Universal Interfaces 3.0.1
  8.  
  9.      Copyright:    © 1985-1993, 1995-1997 by Apple Computer, Inc., all rights reserved
  10.  
  11.      Bugs?:        Please include the the file and version information (from above) with
  12.                  the problem description.  Developers belonging to one of the Apple
  13.                  developer programs can submit bug reports to:
  14.  
  15.                      devsupport@apple.com
  16.  
  17. }
  18. {$IFC UNDEFINED UsingIncludes}
  19. {$SETC UsingIncludes := 0}
  20. {$ENDC}
  21.  
  22. {$IFC NOT UsingIncludes}
  23.  UNIT QDOffscreen;
  24.  INTERFACE
  25. {$ENDC}
  26.  
  27. {$IFC UNDEFINED __QDOFFSCREEN__}
  28. {$SETC __QDOFFSCREEN__ := 1}
  29.  
  30. {$I+}
  31. {$SETC QDOffscreenIncludes := UsingIncludes}
  32. {$SETC UsingIncludes := 1}
  33.  
  34. {$IFC UNDEFINED __ERRORS__}
  35. {$I Errors.p}
  36. {$ENDC}
  37. {$IFC UNDEFINED __QUICKDRAW__}
  38. {$I Quickdraw.p}
  39. {$ENDC}
  40.  
  41.  
  42. {$PUSH}
  43. {$ALIGN MAC68K}
  44. {$LibExport+}
  45.  
  46. {
  47.     NOTE:     GWorldFlags is no longer defined as a SET.  Instead it is a LONGINT
  48.             and the set elements are bit masks.  You will need to use Bit-OR's 
  49.             to build a set and Bit-AND's to test sets.
  50. }
  51.  
  52. CONST
  53.     pixPurgeBit                    = 0;
  54.     noNewDeviceBit                = 1;
  55.     useTempMemBit                = 2;
  56.     keepLocalBit                = 3;
  57.     pixelsPurgeableBit            = 6;
  58.     pixelsLockedBit                = 7;
  59.     mapPixBit                    = 16;
  60.     newDepthBit                    = 17;
  61.     alignPixBit                    = 18;
  62.     newRowBytesBit                = 19;
  63.     reallocPixBit                = 20;
  64.     clipPixBit                    = 28;
  65.     stretchPixBit                = 29;
  66.     ditherPixBit                = 30;
  67.     gwFlagErrBit                = 31;
  68.  
  69.     pixPurge                    = $00000001;
  70.     noNewDevice                    = $00000002;
  71.     useTempMem                    = $00000004;
  72.     keepLocal                    = $00000008;
  73.     pixelsPurgeable                = $00000040;
  74.     pixelsLocked                = $00000080;
  75.     mapPix                        = $00010000;
  76.     newDepth                    = $00020000;
  77.     alignPix                    = $00040000;
  78.     newRowBytes                    = $00080000;
  79.     reallocPix                    = $00100000;
  80.     clipPix                        = $10000000;
  81.     stretchPix                    = $20000000;
  82.     ditherPix                    = $40000000;
  83.     gwFlagErr                    = $80000000;
  84.  
  85.  
  86. TYPE
  87.     GWorldFlags                            = LONGINT;
  88. { Type definition of a GWorldPtr }
  89.     GWorldPtr                            = CGrafPtr;
  90. FUNCTION NewGWorld(VAR offscreenGWorld: GWorldPtr; PixelDepth: INTEGER; {CONST}VAR boundsRect: Rect; cTable: CTabHandle; aGDevice: GDHandle; flags: GWorldFlags): QDErr;
  91.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  92.     INLINE $203C, $0016, $0000, $AB1D;
  93.     {$ENDC}
  94. FUNCTION LockPixels(pm: PixMapHandle): BOOLEAN;
  95.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  96.     INLINE $203C, $0004, $0001, $AB1D;
  97.     {$ENDC}
  98. PROCEDURE UnlockPixels(pm: PixMapHandle);
  99.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  100.     INLINE $203C, $0004, $0002, $AB1D;
  101.     {$ENDC}
  102. FUNCTION UpdateGWorld(VAR offscreenGWorld: GWorldPtr; pixelDepth: INTEGER; {CONST}VAR boundsRect: Rect; cTable: CTabHandle; aGDevice: GDHandle; flags: GWorldFlags): GWorldFlags;
  103.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  104.     INLINE $203C, $0016, $0003, $AB1D;
  105.     {$ENDC}
  106. PROCEDURE DisposeGWorld(offscreenGWorld: GWorldPtr);
  107.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  108.     INLINE $203C, $0004, $0004, $AB1D;
  109.     {$ENDC}
  110. PROCEDURE GetGWorld(VAR port: CGrafPtr; VAR gdh: GDHandle);
  111.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  112.     INLINE $203C, $0008, $0005, $AB1D;
  113.     {$ENDC}
  114. PROCEDURE SetGWorld(port: CGrafPtr; gdh: GDHandle);
  115.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  116.     INLINE $203C, $0008, $0006, $AB1D;
  117.     {$ENDC}
  118. PROCEDURE CTabChanged(ctab: CTabHandle);
  119.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  120.     INLINE $203C, $0004, $0007, $AB1D;
  121.     {$ENDC}
  122. PROCEDURE PixPatChanged(ppat: PixPatHandle);
  123.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  124.     INLINE $203C, $0004, $0008, $AB1D;
  125.     {$ENDC}
  126. PROCEDURE PortChanged(port: GrafPtr);
  127.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  128.     INLINE $203C, $0004, $0009, $AB1D;
  129.     {$ENDC}
  130. PROCEDURE GDeviceChanged(gdh: GDHandle);
  131.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  132.     INLINE $203C, $0004, $000A, $AB1D;
  133.     {$ENDC}
  134. PROCEDURE AllowPurgePixels(pm: PixMapHandle);
  135.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  136.     INLINE $203C, $0004, $000B, $AB1D;
  137.     {$ENDC}
  138. PROCEDURE NoPurgePixels(pm: PixMapHandle);
  139.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  140.     INLINE $203C, $0004, $000C, $AB1D;
  141.     {$ENDC}
  142. FUNCTION GetPixelsState(pm: PixMapHandle): GWorldFlags;
  143.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  144.     INLINE $203C, $0004, $000D, $AB1D;
  145.     {$ENDC}
  146. PROCEDURE SetPixelsState(pm: PixMapHandle; state: GWorldFlags);
  147.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  148.     INLINE $203C, $0008, $000E, $AB1D;
  149.     {$ENDC}
  150. FUNCTION GetPixBaseAddr(pm: PixMapHandle): Ptr;
  151.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  152.     INLINE $203C, $0004, $000F, $AB1D;
  153.     {$ENDC}
  154. FUNCTION NewScreenBuffer({CONST}VAR globalRect: Rect; purgeable: BOOLEAN; VAR gdh: GDHandle; VAR offscreenPixMap: PixMapHandle): QDErr;
  155.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  156.     INLINE $203C, $000E, $0010, $AB1D;
  157.     {$ENDC}
  158. PROCEDURE DisposeScreenBuffer(offscreenPixMap: PixMapHandle);
  159.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  160.     INLINE $203C, $0004, $0011, $AB1D;
  161.     {$ENDC}
  162. FUNCTION GetGWorldDevice(offscreenGWorld: GWorldPtr): GDHandle;
  163.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  164.     INLINE $203C, $0004, $0012, $AB1D;
  165.     {$ENDC}
  166. FUNCTION QDDone(port: GrafPtr): BOOLEAN;
  167.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  168.     INLINE $203C, $0004, $0013, $AB1D;
  169.     {$ENDC}
  170. FUNCTION OffscreenVersion: LONGINT;
  171.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  172.     INLINE $7014, $AB1D;
  173.     {$ENDC}
  174. FUNCTION NewTempScreenBuffer({CONST}VAR globalRect: Rect; purgeable: BOOLEAN; VAR gdh: GDHandle; VAR offscreenPixMap: PixMapHandle): QDErr;
  175.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  176.     INLINE $203C, $000E, $0015, $AB1D;
  177.     {$ENDC}
  178. FUNCTION PixMap32Bit(pmHandle: PixMapHandle): BOOLEAN;
  179.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  180.     INLINE $203C, $0004, $0016, $AB1D;
  181.     {$ENDC}
  182. FUNCTION GetGWorldPixMap(offscreenGWorld: GWorldPtr): PixMapHandle;
  183.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  184.     INLINE $203C, $0004, $0017, $AB1D;
  185.     {$ENDC}
  186.  
  187. {$ALIGN RESET}
  188. {$POP}
  189.  
  190. {$SETC UsingIncludes := QDOffscreenIncludes}
  191.  
  192. {$ENDC} {__QDOFFSCREEN__}
  193.  
  194. {$IFC NOT UsingIncludes}
  195.  END.
  196. {$ENDC}
  197.